package prototype.persistence;

import java.util.List;
import java.sql.Timestamp;

import prototype.persistence.pojo.Unit;
/**
 * <p>Generic DAO layer for Units</p>
 * <p>Generated at Sun Jan 03 13:49:53 EET 2010</p>
 *
 * @author Salto-db Generator v1.0.16 / Pojos + Hibernate mapping + Generic DAO
 * @see http://www.hibernate.org/328.html
 */
public interface UnitDAO extends GenericDAO<Unit,Integer> {

	/*
	 * TODO : Add specific businesses daos here.
	 * These methods will be overwrited if you re-generate this interface.
	 * You might want to extend this interface and to change the dao factory to return 
	 * an instance of the new implemenation in buildUnitDAO()
	 */
	  	 
	/**
	 * Find Unit by name
	 */
	public List<Unit> findByName(String name);

	/**
	 * Find Unit by className
	 */
	public List<Unit> findByClassName(String className);

	/**
	 * Find Unit by jessFile
	 */
	public List<Unit> findByJessFile(String jessFile);

	/**
	 * Find Unit by modelFile
	 */
	public List<Unit> findByModelFile(String modelFile);

	/**
	 * Find Unit by health
	 */
	public List<Unit> findByHealth(Integer health);

	/**
	 * Find Unit by armor
	 */
	public List<Unit> findByArmor(Integer armor);

	/**
	 * Find Unit by movementRate
	 */
	public List<Unit> findByMovementRate(Integer movementRate);

	/**
	 * Find Unit by firePower
	 */
	public List<Unit> findByFirePower(Integer firePower);

	/**
	 * Find Unit by rangeDistance
	 */
	public List<Unit> findByRangeDistance(Integer rangeDistance);

	/**
	 * Find Unit by reloadTime
	 */
	public List<Unit> findByReloadTime(Integer reloadTime);

	/**
	 * Find Unit by accuracy
	 */
	public List<Unit> findByAccuracy(Integer accuracy);

	/**
	 * Find Unit by fireEffectRadius
	 */
	public List<Unit> findByFireEffectRadius(Integer fireEffectRadius);

}